Deadbeat control methods can use the state equation formalism known in the art that is based on the principle that the state of a motor is entirely described by known values taken by parameters representing its degrees of freedom. The state of a motor can be characterized by an n-dimensional state vector {right arrow over (X)} where n is equal to the number of degrees of freedom. Changes in the machine resulting from a control input represented by an m-dimensional control vector {right arrow over (V)} adapted to control the machine are then described by the following system of linear state equations, which will be familiar to the person skilled in the art of automatic control:{right arrow over ({dot over (X)}=A·{right arrow over (X)}+B·{right arrow over (V)}  (1)
where:                {right arrow over ({dot over (X)} is the derivative with respect to time of the state vector {right arrow over (X)};        {right arrow over (V)} is the instantaneous control vector;        A is an n.n-dimensional matrix of free behavior of the machine in the absence of any control input; and        B is an n.m-dimensional control matrix.        
In the case of isotropic motors, the dimensions n and m are made smaller by writing matrices and vectors in the complex plane.
The two matrices A and B represent a linear model of the motor and are obtained from electrical differential equations of the motor for a given dynamic state. A model that is not linear must be linearized about an operating point and in this case it is therefore necessary to have a plurality of models available.
To determine the state of the motor at the end of an interval T of continuous application of an average control vector {right arrow over ( V, it is necessary to integrate equation (1) between two times tn and tn+1 spaced in time by the interval T. The result may be put into the form of a discrete system of state equations known in the art:{right arrow over (X)}(tn+1)=F(T)·{right arrow over (X)}(tn)+G(T)·{right arrow over ( V(tn→n+1)  (2)
where:                F(T) is an n.n-dimensional transition matrix of the motor defined by F=eA.T;        G(T) is an n.m-dimensional control matrix defined by G=A−1·(eA·T˜Inn)·B where Inn is the n.n-dimensional unit matrix;        {right arrow over (X)}(tn+1) and {right arrow over (X)}(tn) are the state vectors at the times tn+1 and tn, respectively; and        {right arrow over ( V(tn→n+1) is the average control vector applied during the interval T, i.e. from the time tn to the time tn+1.        
The average control vector {right arrow over ( V is either an instantaneous vector applied continuously during the interval T or the average of a time succession of instantaneous control vectors {right arrow over (V)} applied directly to the motor during the interval T. In the case of a time succession of instantaneous vectors, each instantaneous vector is applied for a time period that is very short compared to the time constants of the motor, with the result that the application of this succession of instantaneous vectors produces the same effects as the continuous application of a single instantaneous vector of selected phase and amplitude during the same time interval T.
A succession of instantaneous vectors is often used because most motor drives can produce only a limited number of amplitudes and phases of the instantaneous control vectors. For example, a three-phase inverter can produce only six different non-zero instantaneous control vectors. This being so, to be able to obtain a control vector of any amplitude and phase from a three-phase inverter, it is standard practice to apply directly to the motor a time
succession of instantaneous control vectors whose average value {right arrow over ( V between the times tn and tn+1 is equal to an average control vector whose phase and amplitude are selected at will. For example, a pulse width modulation method produces an average control vector whose phase and amplitude may be chosen at will from a power supply device able to produce only a limited number of phases and amplitudes of the instantaneous control vectors.
In the remainder of the description, unless otherwise indicated, the term “control vector” refers to an average control vector.
A control vector is typically a voltage vector applying a specific voltage to all phases of the motor simultaneously.
If a model (A, B) of the motor and an initial state {right arrow over (X)}0={right arrow over (X)}(tn), which may be measured, for example, or estimated on the basis of an observer such as a Kalman filter, are known, it becomes possible to predict the new state {right arrow over (X)}p={right arrow over (X)}(tn+T) after continuous application of the control vector {right arrow over ( V during the interval T.
In contrast, it is possible to calculate the control vector {right arrow over ( V to be applied for the predicted state to coincide with a set point state, which amounts to replacing {right arrow over (X)}p with a set point state {right arrow over (X)}c. The discrete system of state equations then becomes:{right arrow over (X)}c=F(T)·{right arrow over (X)}0+G(T)·{right arrow over ( V  (3)
However, the matrix G(T) is not square and therefore cannot be inverted, with the result that we do not know how to calculate analytically the control vector {right arrow over ( V that is the solution of the system of equations (3).
This being the case, the system of equations is conventionally inverted and the control vector calculated by means of approximate methods. In the case of rotary motors or rotary electrical machines in which the magnetic flux varies slowly, the approximation comprises assuming the magnetic flux of the motor is established under steady state conditions.
By means of this kind of approximation, it is then possible to calculate a control vector enabling a set point torque to be achieved at the end of the interval T. European Patent Application EP-A-1 045 514 discloses one example of the above kind of deadbeat control method.
However, when this kind of deadbeat control method is used in practice, the motor becomes progressively demagnetized. These control methods therefore have the drawback that it is necessary to add a loop to slave the magnetic flux of the motor to a set point flux to prevent demagnetization of the motor by the deadbeat control method.